-
object Start
final case object Start extends PingMessage with ScalaObject with Product with Serializable {
def this(): object Start = {
val PingPong.scala$tmpVal2: PingMessage = Start.this.$init$$super1();
()
};
def $init$$super1(): PingMessage = {
val PingPong.scala$tmpVal1: java.lang.Object = PingMessage.super.this();
()
};
override def productArity(): Int = 0;
final override def toString(): java.lang.String = "Start";
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal3: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal4: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal3);
throw PingPong.scala$tmpVal4
}
};
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal5: Boolean = x$1.$isInstanceOf[object Start]();
PingPong.scala$tmpVal5
};
protected def readResolve(): java.lang.Object = Start;
override def productPrefix(): java.lang.String = "Start";
final override def hashCode(): Int = 80204866
}
-
class PingMessage
abstract class PingMessage extends java.lang.Object with ScalaObject {
def this(): PingMessage = {
val PingPong.scala$tmpVal1: java.lang.Object = PingMessage.super.this();
()
}
}
-
class PongMessage
abstract class PongMessage extends java.lang.Object with ScalaObject {
def this(): PongMessage = {
val PingPong.scala$tmpVal14: java.lang.Object = PongMessage.super.this();
()
}
}
-
anonymous class PingPong$lift$anonfun2
@SerialVersionUID(0) final <synthetic> class PingPong$lift$anonfun2 extends java.lang.Object with PartialFunction[Any,Unit] with Serializable {
def this(PingPong$lift$outer$arg2: anonymous class PingPong$lift$anonfun1): anonymous class PingPong$lift$anonfun2 = {
val PingPong.scala$tmpVal33: java.lang.Object = PingPong$lift$anonfun2.super.this();
PingPong$lift$anonfun2.this.PingPong$lift$outer2 = PingPong$lift$anonfun2.this.PingPong$lift$outer$arg2;
()
};
final def apply(x0$1: Any): Unit = (x0$1: Any @unchecked) match {
case Start => {
scala.this.Predef.println("Ping: starting.");
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pong.!(Ping);
val PingPong.scala$tmpVal34: Int = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft();
val PingPong.scala$tmpVal35: Int = PingPong.scala$tmpVal34.-(1);
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft_=(PingPong.scala$tmpVal35)
}
case SendPing => {
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pong.!(Ping);
val PingPong.scala$tmpVal36: Int = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft();
val PingPong.scala$tmpVal37: Int = PingPong.scala$tmpVal36.-(1);
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft_=(PingPong.scala$tmpVal37)
}
case Pong => {
val PingPong.scala$tmpVal38: Int = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft();
val PingPong.scala$tmpVal39: Int = PingPong.scala$tmpVal38.%(1000);
val PingPong.scala$tmpVal40: Boolean = PingPong.scala$tmpVal39.==(0);
if (PingPong.scala$tmpVal40)
{
val PingPong.scala$tmpVal41: scala.actors.OutputChannel[Any] = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.sender();
val PingPong.scala$tmpVal42: java.lang.String = "Ping: pong from: ".+(PingPong.scala$tmpVal41);
scala.this.Predef.println(PingPong.scala$tmpVal42)
}
else
();
val PingPong.scala$tmpVal43: Int = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft();
val PingPong.scala$tmpVal44: Boolean = PingPong.scala$tmpVal43.>(0);
if (PingPong.scala$tmpVal44)
{
val PingPong.scala$tmpVal45: scala.actors.Actor = scala.actors.Actor.self();
PingPong.scala$tmpVal45.!(SendPing)
}
else
{
scala.this.Predef.println("Ping: Stop.");
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pong.!(Stop);
val PingPong.scala$tmpVal46: Symbol = scala.Symbol.apply("stop");
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.exit(PingPong.scala$tmpVal46)
}
}
};
final def isDefinedAt(x$1: Any): Boolean = (x$1: Any @unchecked) match {
case Start => true
case SendPing => true
case Pong => true
case _ => false
}
}
-
class Pong
class Pong extends java.lang.Object with scala.actors.Actor with ScalaObject {
def this(): Pong = {
val PingPong.scala$tmpVal49: java.lang.Object = Pong.super.this();
Pong.this.pongCount = 0;
()
};
private[this] var pongCount: Int = _;
def act(): Unit = {
val PingPong.scala$tmpVal65: anonymous class PingPong$lift$anonfun3 = new anonymous class PingPong$lift$anonfun3(Pong.this);
Pong.this.loop((PingPong.scala$tmpVal65: () => Nothing))
};
<accessor> def pongCount(): Int = Pong.this.pongCount;
<accessor> def pongCount_=(x$1: Int): Unit = Pong.this.pongCount = x$1
}
-
object Ping
final case object Ping extends PongMessage with ScalaObject with Product with Serializable {
def this(): object Ping = {
val PingPong.scala$tmpVal15: PongMessage = Ping.this.$init$$super2();
()
};
def $init$$super2(): PongMessage = {
val PingPong.scala$tmpVal14: java.lang.Object = PongMessage.super.this();
()
};
override def productArity(): Int = 0;
final override def toString(): java.lang.String = "Ping";
override def productPrefix(): java.lang.String = "Ping";
protected def readResolve(): java.lang.Object = Ping;
final override def hashCode(): Int = 2487698;
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal18: Boolean = x$1.$isInstanceOf[object Ping]();
PingPong.scala$tmpVal18
};
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal16: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal17: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal16);
throw PingPong.scala$tmpVal17
}
}
}
-
object PingPong
final object PingPong extends java.lang.Object with ScalaObject {
def this(): object PingPong = {
val PingPong.scala$tmpVal23: java.lang.Object = PingPong.super.this();
()
};
def main(args: Array[java.lang.String]): Unit = {
val PingPong.scala$tmpVal24: Pong = new Pong();
val pong: Pong = PingPong.scala$tmpVal24;
val PingPong.scala$tmpVal25: Ping = new Ping(100000, pong);
val ping: Ping = PingPong.scala$tmpVal25;
val PingPong.scala$tmpVal26: scala.actors.Actor = ping.start();
val PingPong.scala$tmpVal27: scala.actors.Actor = pong.start();
ping.!(Start)
}
}
-
anonymous class PingPong$lift$anonfun4
@SerialVersionUID(0) final <synthetic> class PingPong$lift$anonfun4 extends java.lang.Object with PartialFunction[Any,Unit] with Serializable {
def this(PingPong$lift$outer$arg4: anonymous class PingPong$lift$anonfun3): anonymous class PingPong$lift$anonfun4 = {
val PingPong.scala$tmpVal51: java.lang.Object = PingPong$lift$anonfun4.super.this();
PingPong$lift$anonfun4.this.PingPong$lift$outer4 = PingPong$lift$anonfun4.this.PingPong$lift$outer$arg4;
()
};
final def isDefinedAt(x$1: Any): Boolean = (x$1: Any @unchecked) match {
case Ping => true
case Stop => true
case _ => false
};
final def apply(x0$2: Any): Unit = (x0$2: Any @unchecked) match {
case Ping => {
val PingPong.scala$tmpVal52: Int = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.pongCount();
val PingPong.scala$tmpVal53: Int = PingPong.scala$tmpVal52.%(1000);
val PingPong.scala$tmpVal54: Boolean = PingPong.scala$tmpVal53.==(0);
if (PingPong.scala$tmpVal54)
{
val PingPong.scala$tmpVal55: Int = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.pongCount();
val PingPong.scala$tmpVal56: java.lang.String = "Pong: ping ".+(PingPong.scala$tmpVal55);
val PingPong.scala$tmpVal57: java.lang.String = PingPong.scala$tmpVal56.+(" from ");
val PingPong.scala$tmpVal58: scala.actors.OutputChannel[Any] = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.sender();
val PingPong.scala$tmpVal59: java.lang.String = PingPong.scala$tmpVal57.+(PingPong.scala$tmpVal58);
scala.this.Predef.println(PingPong.scala$tmpVal59)
}
else
();
val PingPong.scala$tmpVal60: scala.actors.OutputChannel[Any] = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.sender();
PingPong.scala$tmpVal60.!(Pong);
val PingPong.scala$tmpVal61: Int = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.pongCount();
val PingPong.scala$tmpVal62: Int = PingPong.scala$tmpVal61.+(1);
PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.pongCount_=(PingPong.scala$tmpVal62)
}
case Stop => {
scala.this.Predef.println("Pong: Stop.");
val PingPong.scala$tmpVal63: Symbol = scala.Symbol.apply("stop");
PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.exit(PingPong.scala$tmpVal63)
}
}
}
-
anonymous class PingPong$lift$anonfun1
@SerialVersionUID(0) final <synthetic> class PingPong$lift$anonfun1 extends scala.runtime.AbstractFunction0[Nothing] with Serializable {
def this(PingPong$lift$outer$arg1: Ping): anonymous class PingPong$lift$anonfun1 = {
val PingPong.scala$tmpVal32: scala.runtime.AbstractFunction0[Nothing] = PingPong$lift$anonfun1.super.this();
PingPong$lift$anonfun1.this.PingPong$lift$outer1 = PingPong$lift$anonfun1.this.PingPong$lift$outer$arg1;
()
};
final def apply(): Nothing = {
val PingPong.scala$tmpVal47: anonymous class PingPong$lift$anonfun2 = new anonymous class PingPong$lift$anonfun2(PingPong$lift$anonfun1.this);
PingPong$lift$anonfun1.this.PingPong$lift$outer1.react((PingPong.scala$tmpVal47: PartialFunction[Any,Unit]))
}
}
-
class Ping
class Ping extends java.lang.Object with scala.actors.Actor with ScalaObject {
def this(count: Int, pong: scala.actors.Actor): Ping = {
val PingPong.scala$tmpVal28: java.lang.Object = Ping.super.this();
Ping.this.count = count;
Ping.this.pong = pong;
Ping.this.pingsLeft = Ping.this.count;
()
};
<paramaccessor> private[this] val count: Int = _;
<paramaccessor> private[this] val pong: scala.actors.Actor = _;
private[this] var pingsLeft: Int = _;
<accessor> def pingsLeft_=(x$1: Int): Unit = Ping.this.pingsLeft = x$1;
def act(): Unit = {
val PingPong.scala$tmpVal29: java.lang.String = "Ping: Initializing with count ".+(Ping.this.count);
val PingPong.scala$tmpVal30: java.lang.String = PingPong.scala$tmpVal29.+(": ");
val PingPong.scala$tmpVal31: java.lang.String = PingPong.scala$tmpVal30.+(Ping.this.pong);
scala.this.Predef.println(PingPong.scala$tmpVal31);
val PingPong.scala$tmpVal48: anonymous class PingPong$lift$anonfun1 = new anonymous class PingPong$lift$anonfun1(Ping.this);
Ping.this.loop((PingPong.scala$tmpVal48: () => Nothing))
};
<accessor> def pingsLeft(): Int = Ping.this.pingsLeft
}
-
object Pong
final case object Pong extends PingMessage with ScalaObject with Product with Serializable {
def this(): object Pong = {
val PingPong.scala$tmpVal6: PingMessage = Pong.this.$init$$super3();
()
};
def $init$$super3(): PingMessage = {
val PingPong.scala$tmpVal1: java.lang.Object = PingMessage.super.this();
()
};
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal7: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal8: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal7);
throw PingPong.scala$tmpVal8
}
};
override def productArity(): Int = 0;
final override def hashCode(): Int = 2493464;
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal9: Boolean = x$1.$isInstanceOf[object Pong]();
PingPong.scala$tmpVal9
};
override def productPrefix(): java.lang.String = "Pong";
protected def readResolve(): java.lang.Object = Pong;
final override def toString(): java.lang.String = "Pong"
}
-
anonymous class PingPong$lift$anonfun3
@SerialVersionUID(0) final <synthetic> class PingPong$lift$anonfun3 extends scala.runtime.AbstractFunction0[Nothing] with Serializable {
def this(PingPong$lift$outer$arg3: Pong): anonymous class PingPong$lift$anonfun3 = {
val PingPong.scala$tmpVal50: scala.runtime.AbstractFunction0[Nothing] = PingPong$lift$anonfun3.super.this();
PingPong$lift$anonfun3.this.PingPong$lift$outer3 = PingPong$lift$anonfun3.this.PingPong$lift$outer$arg3;
()
};
final def apply(): Nothing = {
val PingPong.scala$tmpVal64: anonymous class PingPong$lift$anonfun4 = new anonymous class PingPong$lift$anonfun4(PingPong$lift$anonfun3.this);
PingPong$lift$anonfun3.this.PingPong$lift$outer3.react((PingPong.scala$tmpVal64: PartialFunction[Any,Unit]))
}
}
-
object Stop
final case object Stop extends PongMessage with ScalaObject with Product with Serializable {
def this(): object Stop = {
val PingPong.scala$tmpVal19: PongMessage = Stop.this.$init$$super4();
()
};
def $init$$super4(): PongMessage = {
val PingPong.scala$tmpVal14: java.lang.Object = PongMessage.super.this();
()
};
override def productArity(): Int = 0;
protected def readResolve(): java.lang.Object = Stop;
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal22: Boolean = x$1.$isInstanceOf[object Stop]();
PingPong.scala$tmpVal22
};
final override def hashCode(): Int = 2587682;
override def productPrefix(): java.lang.String = "Stop";
final override def toString(): java.lang.String = "Stop";
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal20: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal21: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal20);
throw PingPong.scala$tmpVal21
}
}
}
-
object SendPing
final case object SendPing extends PingMessage with ScalaObject with Product with Serializable {
def this(): object SendPing = {
val PingPong.scala$tmpVal10: PingMessage = SendPing.this.$init$$super5();
()
};
def $init$$super5(): PingMessage = {
val PingPong.scala$tmpVal1: java.lang.Object = PingMessage.super.this();
()
};
final override def hashCode(): Int = 1311974714;
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal11: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal12: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal11);
throw PingPong.scala$tmpVal12
}
};
final override def toString(): java.lang.String = "SendPing";
override def productArity(): Int = 0;
override def productPrefix(): java.lang.String = "SendPing";
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal13: Boolean = x$1.$isInstanceOf[object SendPing]();
PingPong.scala$tmpVal13
};
protected def readResolve(): java.lang.Object = SendPing
}
-
object Start
final case object Start extends PingMessage with ScalaObject with Product with Serializable {
def this(): object Start = {
val PingPong.scala$tmpVal2: PingMessage = Start.this.$init$$super1();
()
};
def $init$$super1(): PingMessage = {
val PingPong.scala$tmpVal1: java.lang.Object = PingMessage.super.this();
()
};
override def productArity(): Int = 0;
final override def toString(): java.lang.String = "Start";
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal3: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal4: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal3);
throw PingPong.scala$tmpVal4
}
};
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal5: Boolean = x$1.$isInstanceOf[object Start]();
PingPong.scala$tmpVal5
};
protected def readResolve(): java.lang.Object = Start;
override def productPrefix(): java.lang.String = "Start";
final override def hashCode(): Int = 80204866
}
-
class PingMessage
abstract class PingMessage extends java.lang.Object with ScalaObject {
def this(): PingMessage = {
val PingPong.scala$tmpVal1: java.lang.Object = PingMessage.super.this();
()
}
}
-
class PongMessage
abstract class PongMessage extends java.lang.Object with ScalaObject {
def this(): PongMessage = {
val PingPong.scala$tmpVal14: java.lang.Object = PongMessage.super.this();
()
}
}
-
anonymous class PingPong$lift$anonfun2
@SerialVersionUID(0) final <synthetic> class PingPong$lift$anonfun2 extends java.lang.Object with PartialFunction[Any,Unit] with Serializable {
def this(PingPong$lift$outer$arg2: anonymous class PingPong$lift$anonfun1): anonymous class PingPong$lift$anonfun2 = {
val PingPong.scala$tmpVal33: java.lang.Object = PingPong$lift$anonfun2.super.this();
PingPong$lift$anonfun2.this.PingPong$lift$outer2 = PingPong$lift$anonfun2.this.PingPong$lift$outer$arg2;
()
};
final def apply(x0$1: Any): Unit = (x0$1: Any @unchecked) match {
case Start => {
scala.this.Predef.println("Ping: starting.");
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pong.!(Ping);
val PingPong.scala$tmpVal34: Int = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft();
val PingPong.scala$tmpVal35: Int = PingPong.scala$tmpVal34.-(1);
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft_=(PingPong.scala$tmpVal35)
}
case SendPing => {
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pong.!(Ping);
val PingPong.scala$tmpVal36: Int = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft();
val PingPong.scala$tmpVal37: Int = PingPong.scala$tmpVal36.-(1);
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft_=(PingPong.scala$tmpVal37)
}
case Pong => {
val PingPong.scala$tmpVal38: Int = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft();
val PingPong.scala$tmpVal39: Int = PingPong.scala$tmpVal38.%(1000);
val PingPong.scala$tmpVal40: Boolean = PingPong.scala$tmpVal39.==(0);
if (PingPong.scala$tmpVal40)
{
val PingPong.scala$tmpVal41: scala.actors.OutputChannel[Any] = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.sender();
val PingPong.scala$tmpVal42: java.lang.String = "Ping: pong from: ".+(PingPong.scala$tmpVal41);
scala.this.Predef.println(PingPong.scala$tmpVal42)
}
else
();
val PingPong.scala$tmpVal43: Int = PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pingsLeft();
val PingPong.scala$tmpVal44: Boolean = PingPong.scala$tmpVal43.>(0);
if (PingPong.scala$tmpVal44)
{
val PingPong.scala$tmpVal45: scala.actors.Actor = scala.actors.Actor.self();
PingPong.scala$tmpVal45.!(SendPing)
}
else
{
scala.this.Predef.println("Ping: Stop.");
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.pong.!(Stop);
val PingPong.scala$tmpVal46: Symbol = scala.Symbol.apply("stop");
PingPong$lift$anonfun2.this.PingPong$lift$outer2.PingPong$lift$outer1.exit(PingPong.scala$tmpVal46)
}
}
};
final def isDefinedAt(x$1: Any): Boolean = (x$1: Any @unchecked) match {
case Start => true
case SendPing => true
case Pong => true
case _ => false
}
}
-
class Pong
class Pong extends java.lang.Object with scala.actors.Actor with ScalaObject {
def this(): Pong = {
val PingPong.scala$tmpVal49: java.lang.Object = Pong.super.this();
Pong.this.pongCount = 0;
()
};
private[this] var pongCount: Int = _;
def act(): Unit = {
val PingPong.scala$tmpVal65: anonymous class PingPong$lift$anonfun3 = new anonymous class PingPong$lift$anonfun3(Pong.this);
Pong.this.loop((PingPong.scala$tmpVal65: () => Nothing))
};
<accessor> def pongCount(): Int = Pong.this.pongCount;
<accessor> def pongCount_=(x$1: Int): Unit = Pong.this.pongCount = x$1
}
-
object Ping
final case object Ping extends PongMessage with ScalaObject with Product with Serializable {
def this(): object Ping = {
val PingPong.scala$tmpVal15: PongMessage = Ping.this.$init$$super2();
()
};
def $init$$super2(): PongMessage = {
val PingPong.scala$tmpVal14: java.lang.Object = PongMessage.super.this();
()
};
override def productArity(): Int = 0;
final override def toString(): java.lang.String = "Ping";
override def productPrefix(): java.lang.String = "Ping";
protected def readResolve(): java.lang.Object = Ping;
final override def hashCode(): Int = 2487698;
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal18: Boolean = x$1.$isInstanceOf[object Ping]();
PingPong.scala$tmpVal18
};
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal16: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal17: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal16);
throw PingPong.scala$tmpVal17
}
}
}
-
object PingPong
final object PingPong extends java.lang.Object with ScalaObject {
def this(): object PingPong = {
val PingPong.scala$tmpVal23: java.lang.Object = PingPong.super.this();
()
};
def main(args: Array[java.lang.String]): Unit = {
val PingPong.scala$tmpVal24: Pong = new Pong();
val pong: Pong = PingPong.scala$tmpVal24;
val PingPong.scala$tmpVal25: Ping = new Ping(100000, pong);
val ping: Ping = PingPong.scala$tmpVal25;
val PingPong.scala$tmpVal26: scala.actors.Actor = ping.start();
val PingPong.scala$tmpVal27: scala.actors.Actor = pong.start();
ping.!(Start)
}
}
-
anonymous class PingPong$lift$anonfun4
@SerialVersionUID(0) final <synthetic> class PingPong$lift$anonfun4 extends java.lang.Object with PartialFunction[Any,Unit] with Serializable {
def this(PingPong$lift$outer$arg4: anonymous class PingPong$lift$anonfun3): anonymous class PingPong$lift$anonfun4 = {
val PingPong.scala$tmpVal51: java.lang.Object = PingPong$lift$anonfun4.super.this();
PingPong$lift$anonfun4.this.PingPong$lift$outer4 = PingPong$lift$anonfun4.this.PingPong$lift$outer$arg4;
()
};
final def isDefinedAt(x$1: Any): Boolean = (x$1: Any @unchecked) match {
case Ping => true
case Stop => true
case _ => false
};
final def apply(x0$2: Any): Unit = (x0$2: Any @unchecked) match {
case Ping => {
val PingPong.scala$tmpVal52: Int = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.pongCount();
val PingPong.scala$tmpVal53: Int = PingPong.scala$tmpVal52.%(1000);
val PingPong.scala$tmpVal54: Boolean = PingPong.scala$tmpVal53.==(0);
if (PingPong.scala$tmpVal54)
{
val PingPong.scala$tmpVal55: Int = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.pongCount();
val PingPong.scala$tmpVal56: java.lang.String = "Pong: ping ".+(PingPong.scala$tmpVal55);
val PingPong.scala$tmpVal57: java.lang.String = PingPong.scala$tmpVal56.+(" from ");
val PingPong.scala$tmpVal58: scala.actors.OutputChannel[Any] = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.sender();
val PingPong.scala$tmpVal59: java.lang.String = PingPong.scala$tmpVal57.+(PingPong.scala$tmpVal58);
scala.this.Predef.println(PingPong.scala$tmpVal59)
}
else
();
val PingPong.scala$tmpVal60: scala.actors.OutputChannel[Any] = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.sender();
PingPong.scala$tmpVal60.!(Pong);
val PingPong.scala$tmpVal61: Int = PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.pongCount();
val PingPong.scala$tmpVal62: Int = PingPong.scala$tmpVal61.+(1);
PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.pongCount_=(PingPong.scala$tmpVal62)
}
case Stop => {
scala.this.Predef.println("Pong: Stop.");
val PingPong.scala$tmpVal63: Symbol = scala.Symbol.apply("stop");
PingPong$lift$anonfun4.this.PingPong$lift$outer4.PingPong$lift$outer3.exit(PingPong.scala$tmpVal63)
}
}
}
-
anonymous class PingPong$lift$anonfun1
@SerialVersionUID(0) final <synthetic> class PingPong$lift$anonfun1 extends scala.runtime.AbstractFunction0[Nothing] with Serializable {
def this(PingPong$lift$outer$arg1: Ping): anonymous class PingPong$lift$anonfun1 = {
val PingPong.scala$tmpVal32: scala.runtime.AbstractFunction0[Nothing] = PingPong$lift$anonfun1.super.this();
PingPong$lift$anonfun1.this.PingPong$lift$outer1 = PingPong$lift$anonfun1.this.PingPong$lift$outer$arg1;
()
};
final def apply(): Nothing = {
val PingPong.scala$tmpVal47: anonymous class PingPong$lift$anonfun2 = new anonymous class PingPong$lift$anonfun2(PingPong$lift$anonfun1.this);
PingPong$lift$anonfun1.this.PingPong$lift$outer1.react((PingPong.scala$tmpVal47: PartialFunction[Any,Unit]))
}
}
-
class Ping
class Ping extends java.lang.Object with scala.actors.Actor with ScalaObject {
def this(count: Int, pong: scala.actors.Actor): Ping = {
val PingPong.scala$tmpVal28: java.lang.Object = Ping.super.this();
Ping.this.count = count;
Ping.this.pong = pong;
Ping.this.pingsLeft = Ping.this.count;
()
};
<paramaccessor> private[this] val count: Int = _;
<paramaccessor> private[this] val pong: scala.actors.Actor = _;
private[this] var pingsLeft: Int = _;
<accessor> def pingsLeft_=(x$1: Int): Unit = Ping.this.pingsLeft = x$1;
def act(): Unit = {
val PingPong.scala$tmpVal29: java.lang.String = "Ping: Initializing with count ".+(Ping.this.count);
val PingPong.scala$tmpVal30: java.lang.String = PingPong.scala$tmpVal29.+(": ");
val PingPong.scala$tmpVal31: java.lang.String = PingPong.scala$tmpVal30.+(Ping.this.pong);
scala.this.Predef.println(PingPong.scala$tmpVal31);
val PingPong.scala$tmpVal48: anonymous class PingPong$lift$anonfun1 = new anonymous class PingPong$lift$anonfun1(Ping.this);
Ping.this.loop((PingPong.scala$tmpVal48: () => Nothing))
};
<accessor> def pingsLeft(): Int = Ping.this.pingsLeft
}
-
object Pong
final case object Pong extends PingMessage with ScalaObject with Product with Serializable {
def this(): object Pong = {
val PingPong.scala$tmpVal6: PingMessage = Pong.this.$init$$super3();
()
};
def $init$$super3(): PingMessage = {
val PingPong.scala$tmpVal1: java.lang.Object = PingMessage.super.this();
()
};
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal7: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal8: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal7);
throw PingPong.scala$tmpVal8
}
};
override def productArity(): Int = 0;
final override def hashCode(): Int = 2493464;
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal9: Boolean = x$1.$isInstanceOf[object Pong]();
PingPong.scala$tmpVal9
};
override def productPrefix(): java.lang.String = "Pong";
protected def readResolve(): java.lang.Object = Pong;
final override def toString(): java.lang.String = "Pong"
}
-
anonymous class PingPong$lift$anonfun3
@SerialVersionUID(0) final <synthetic> class PingPong$lift$anonfun3 extends scala.runtime.AbstractFunction0[Nothing] with Serializable {
def this(PingPong$lift$outer$arg3: Pong): anonymous class PingPong$lift$anonfun3 = {
val PingPong.scala$tmpVal50: scala.runtime.AbstractFunction0[Nothing] = PingPong$lift$anonfun3.super.this();
PingPong$lift$anonfun3.this.PingPong$lift$outer3 = PingPong$lift$anonfun3.this.PingPong$lift$outer$arg3;
()
};
final def apply(): Nothing = {
val PingPong.scala$tmpVal64: anonymous class PingPong$lift$anonfun4 = new anonymous class PingPong$lift$anonfun4(PingPong$lift$anonfun3.this);
PingPong$lift$anonfun3.this.PingPong$lift$outer3.react((PingPong.scala$tmpVal64: PartialFunction[Any,Unit]))
}
}
-
object Stop
final case object Stop extends PongMessage with ScalaObject with Product with Serializable {
def this(): object Stop = {
val PingPong.scala$tmpVal19: PongMessage = Stop.this.$init$$super4();
()
};
def $init$$super4(): PongMessage = {
val PingPong.scala$tmpVal14: java.lang.Object = PongMessage.super.this();
()
};
override def productArity(): Int = 0;
protected def readResolve(): java.lang.Object = Stop;
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal22: Boolean = x$1.$isInstanceOf[object Stop]();
PingPong.scala$tmpVal22
};
final override def hashCode(): Int = 2587682;
override def productPrefix(): java.lang.String = "Stop";
final override def toString(): java.lang.String = "Stop";
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal20: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal21: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal20);
throw PingPong.scala$tmpVal21
}
}
}
-
object SendPing
final case object SendPing extends PingMessage with ScalaObject with Product with Serializable {
def this(): object SendPing = {
val PingPong.scala$tmpVal10: PingMessage = SendPing.this.$init$$super5();
()
};
def $init$$super5(): PingMessage = {
val PingPong.scala$tmpVal1: java.lang.Object = PingMessage.super.this();
()
};
final override def hashCode(): Int = 1311974714;
override def productElement(x$1: Int): Any = x$1 match {
case _ => {
val PingPong.scala$tmpVal11: java.lang.String = x$1.toString();
val PingPong.scala$tmpVal12: java.lang.IndexOutOfBoundsException = new java.lang.IndexOutOfBoundsException(PingPong.scala$tmpVal11);
throw PingPong.scala$tmpVal12
}
};
final override def toString(): java.lang.String = "SendPing";
override def productArity(): Int = 0;
override def productPrefix(): java.lang.String = "SendPing";
override def canEqual(x$1: Any): Boolean = {
val PingPong.scala$tmpVal13: Boolean = x$1.$isInstanceOf[object SendPing]();
PingPong.scala$tmpVal13
};
protected def readResolve(): java.lang.Object = SendPing
}